<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> oDebugger Help File v0.12 </TITLE>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <META NAME="Author" CONTENT="Jackey.King">
  <META NAME="Keywords" CONTENT="oDebugger, help">
  <META NAME="Description" CONTENT="for oDebugger V0.50">
	<meta NAME="Version" CONTENT="0.12">
  <style type='text/css'>
  BODY{
	font-family:Arial, Verdana, Times New Roman,'宋体';
	font-size:12px;
	/*background-color:#FFFFFF;*/
	background-color:#bce672;
	margin:0 0 0 0;
  }
  A{
	text-decoration: none;
	font-style: normal;
	color:#0000FF;
	cursor:pointer;
  }
  .title0{
	background-color:#ffa631;
	height:28px;
	line-height:28px;
	color:#eaff56;
	position:relative;
	margin:0px;
	overflow:hidden;
  }
  .title{
	background-color:#eaff56;
	height:24px;
	line-height:24px;
	color:#FF00FF;
	position:relative;
	margin:0px;
	overflow:hidden;
  }
  SPAN{
	/*background-color:#CCCCCC;*/
	color:#ff7500;
	font-weight: blod;
  }
  DIV{
	background-color:#bce672;
	position:relative;
	margin: 0 0 5px 0;
	/*color:#fff143; //鹅黄*/
	color:#f47983;
  }
  DIV DIV{
	background-color:#faff72;
	position:relative;
	margin: 0 0 5px 0;
	/*color:#fff143; //鹅黄*/
	color:#f47983;
  }
  DIV DIV SPAN{
	color:#ff7500;
	font-weight: blod;
	margin-right:10px;
  }
  .code{
  }
  #container{
	margin: 0px 50px 0 50px;
	height:100%;
	width:100%;
	position:relative;
	overflow-y:auto;
	overflow-x:hidden;
	scrollbar-3dlight-color: #959CBB;
	scrollbar-arrow-color: #666666;
	scrollbar-base-color: #445289;
	scrollbar-darkshadow-color: #959CBB;
	scrollbar-face-color: #D6DDF3;
	scrollbar-highlight-color: #959CBB;
	scrollbar-shadow-color: #959CBB;
  }
  .head{
	font-size:24px;
	font-weight: blod;
	background-color:#d9b611;
	height:28px;
	line-height:28px;
	color:#bddd22;
	position:relative;
	margin:0px;
	overflow:hidden;
  }
  </style>
 </HEAD>
 <BODY scroll="no">
  <div id='container'>
	<div class='head'>这算是帮助文档吗</div>
	<div class='title0'>oDebugger能做什么</div>
	<div class='title'>给函数下断点</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>bp &lt;函数名&gt;</span>
			给&lt;函数名&gt;下断点，当执行到这个函数时，会弹出对话框显示调用者及传达室入参数，并可以决定执行还是不执行这个函数。
		</div>
		<div>
			<span>bpx &lt;函数名&gt;</span>
			给&lt;函数名&gt;下断点，当执行到这个函数时，会先调用调试器，例如VC。
		</div>
		<div>
			<span>bl </span>
			列出给哪些函数设了断点。
		</div>
		<div>
			<span>bc &lt;数字&gt;</span>
			清除指定的断点。
		</div>
	</div>
	<div class='title'>显示鼠标位置</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode mousepos</span>
			开关显示鼠标位置。
		</div>
	</div>
	<div class='title'>显示输入的keycode</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode keycode</span>
			开关显示keycode。
		</div>
	</div>
	<div class='title'>开关选择状态</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode select</span>
			关掉或打开锁定焦点在命令输入窗口，这样就可以拷贝输出的东西到别的地方去了。
		</div>
	</div>
	<div class='title'>检查页面元素</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode inspect</span>
			开关显示检查状态。firebug的Inspect很酷吧？现在oDebugger也有inspect了。只需输入mode inspect就可以打开可关掉inspect ;=)
		</div>
	</div>
	<div class='title'>改变oDebugger的背景色</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode bgcolor &lt;args&gt;</span>
			设置oDebugger的背景色，args是html颜色值，如 blue、white 或 #FFFFFF。
		</div>
	</div>
	<div class='title'>临时改变oDebugger的背景色</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>mode alpha &lt;args&gt;</span>
			设置oDebugger的透明度，args是数字类型的透明度值，从0到100 (0是完全透明)。
		</div>
	</div>
	<div class='title'>改变鼠标所处位置下的对象背景色</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>F8</span>
			改变鼠标所处位置下的对象背景色，再按一次恢复原色。
		</div>
	</div>
	<div class='title'>显示鼠标所处位置下的对象层次</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>F7</span>
			依次显示鼠标所处位置下的对象以及它的父对象。
		</div>
	</div>
	<div class='title0'>oDebugger还能做什么</div>
	<div class='title'>直接执行当前页面中的javascript</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>任意的javascript代码</span>
			执行输入的任意的javascript代码。甚至可以拿它当个计算器来用，如输入 1 + 1 ，回车后就会显示结果。
		</div>
	</div>
	<div class='title0'>oDebugger还还能做什么</div>
	<div class='title'>大量的内置函数</div>
	<div>
		<div>
			<span>命令：</span>
		</div>
		<div>
			<span>内置有大量的函数</span>
			直接可以以od.开头来调用这些内置函数。如转换10进制到16进制的函数 $toHex(args) 就可以直接用od.$toHex(args)来执行。具体有哪些函数，请看代码吧 ;=)
		</div>
	</div>
	<div class='title0'>oDebugger有哪些快捷键</div>
	<div class='title'>显示或隐藏oDebugger</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>F12</span>
			显示或隐藏oDebugger。
		</div>
	</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>F8</span>
			改变鼠标所处位置下的对象背景色，再按一次恢复原色。
		</div>
	</div>
	<div class='title'>显示鼠标所处位置下的对象层次</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>F7</span>
			依次显示鼠标所处位置下的对象以及它的父对象。
		</div>
	</div>
	<div class='title'>恢复前几次输入的命令</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>Ctrl + 向上箭头</span>
			按住Ctrl不放，依次按向上箭头，会显示命令历史中以前输入的命令。
		</div>
	</div>
	<div class='title'>恢复后几次输入的命令</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>Ctrl + 向下箭头</span>
			按住Ctrl不放，依次按向下箭头，会显示命令历史中以后输入的命令。
		</div>
	</div>
	<div class='title'>保存当前输入的命令</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>右Alt + 数字0-9</span>
			按住右Alt不放，按下数字键，会保存当前输入框中的命令。
		</div>
	</div>
	<div class='title'>恢复保存的命令</div>
	<div>
		<div>
			<span>快捷键：</span>
		</div>
		<div>
			<span>左Alt + 数字0-9</span>
			按住左Alt不放，按下已经保存过的数字键，会把保存的命令放入输入框中。
		</div>
	</div>
	<div class='title0'>oDebugger有哪些快捷默认对象</div>
	<div class='title'>存储动态生成的对象或变量</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>od</span>
			oDebugger在当前页面中的变量名。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>od._g_targetObj</span>
			鼠标所处位置下的对象。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>O[ ] 或 od.O[ ] 或 od._g_oDList[ ]</span>
			数组，可以存储动态生成的对象或变量。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>S(args) 或 od.S(args)</span>
			函数。可以把参数args输出到oDebugger的输出框中。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>M(args) 或 od.M(args)</span>
			函数。显示方法或变量args的属性。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>P(args) 或 od.P(args)</span>
			函数。显示变量的args值。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>V(args) 或 od.V(args)</span>
			函数。显示变量的args值。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>L(args) 或 od.L(args)</span>
			函数。列出对象args的属性和方法名及方法的参数。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>od.listObjectDetails(args)</span>
			函数。列出对象args的属性和方法名及方法的参数以及方法的具体实现代码。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>$R() 或 od.$R()</span>
			函数。返回执行后的结果。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>$(args) 或 od.$(args)</span>
			函数。取得args指定的id所对应的对象。
		</div>
	</div>
	<div>
		<div>
			<span>默认变量名：</span>
		</div>
		<div>
			<span>od.pBody</span>
			取得oDebugger所在的页面的BODY对象。
		</div>
	</div>
	<div class='title0'>怎么动态装入oDebugger</div>
	<div class='title'>单文件页面</div>
	<div>
		<div>
			<span>代码：</span>
		</div>
		<div>
			<span></span>
			在C盘下新建文件夹javascriptdebugger，把debugger.js放到里面去。打开oDebugger文件debugger.js，在文件头部<span>*Dynamic load debugger</span>节，会看到一些注释掉的代码，如果要执行oDebugger的页面是一个页面，就找到30行的代码，拷贝到剪切板，粘贴到地址栏中，按下回车，不久就能看到 inject sucess字样的提示框，确定后就可以用了。
		</div>
	</div>
	<div class='title'>frame框架页面</div>
	<div>
		<div>
			<span>代码：</span>
		</div>
		<div>
			<span></span>
			在C盘下新建文件夹javascriptdebugger，把debugger.js放到里面去。打开oDebugger文件debugger.js，在文件头部<span>*Dynamic load debugger</span>节，会看到一些注释掉的代码，如果要执行oDebugger的页面是一个frame框架页面，并且主frame的名字为main，就找到31行的代码，拷贝到剪切板，粘贴到地址栏中，按下回车，不久就能看到 inject sucess字样的提示框，确定后就可以用了。如果主frame的名字不是main就改一下31行吧（替换掉里面的main为真正的名字），也不难 ;=)
		</div>
	</div>
	<div class='title0'>怎么静态引入oDebugger</div>
	<div class='title'>html文档页面</div>
	<div>
		<div>
			<span>代码：</span>
		</div>
		<div>
			<span></span>
			把debugger.js放到任意地方，记住路径名。在html文档head中添加<span class='code'>&lt;script type='text/javascript' lanuage='javascript' src='你的路径/debugger.js' &gt;&lt;/script&gt;</span>，刷新页面或重新打开页面，并允许javascript脚本，过一小会就能看到oDebugger了。
		</div>
	</div>
	<div class='title'>php、jsp、asp...等文档页面</div>
	<div>
		<div>
			<span>代码：</span>
		</div>
		<div>
			<span></span>
			把debugger.js放到服务器的发布目录下，这儿假设放在了根目录下。在上述文档的head中添加<span class='code'>&lt;script type='text/javascript' lanuage='javascript' src='/debugger.js' &gt;&lt;/script&gt;</span>，刷新页面或重新打开页面，并允许javascript脚本，过一小会就能看到oDebugger了。
		</div>
	</div>
	<div class='title0'>你能为oDebugger做什么</div>
	<div class='title'>参与开发</div>
	<div>
		<div>
			<span>开发：</span>
		</div>
		<div>
			<span></span>
			oDebugger现在仅仅只有Version 0.6 这么大，还很不成熟。你可以参与它的开发。有好的建议请发邮件到：<a href='mailto:Jackey.King@gmail.com'>Jackey.King@gmail.com</a>联系我吧。欢迎寄送你更改的oDebugger过来。
		</div>
	</div>
	<div class='title'>起个名字</div>
	<div>
		<div>
			<span>名字：</span>
		</div>
		<div>
			<span></span>
			很不幸，oDebugger还没有一个自己的名字，你可以给它起个好听的名字。有好的建议请发邮件到：<a href='mailto:Jackey.King@gmail.com'>Jackey.King@gmail.com</a>联系我吧。
		</div>
	</div>
	<div class='title0'>oDebugger的目标是什么</div>
	<div class='title'>目标</div>
	<div>
		<div>
			<span></span>
		</div>
		<div>
			<span></span>
			oDebugger是为了调试js方便而出现的，它定位于方便的调试js，尤其是在那些用VC调试时，VC找不到源码的情况。还适用于：页面中的对象是从后台取得数据，用js动态创建的，这种情况下无论是保存源码还是用VC调试都不方便，一个一个的alert消息也很麻烦，所以就想到了用js来调试js。希望oDebugger以后也会定位于方便和快捷上。
		</div>
	</div>
	<div class='title0'>oDebugger有哪些限制</div>
	<div class='title'>限制</div>
	<div>
		<div>
			<span></span>
		</div>
		<div>
			<span></span>
			oDebugger目前只能在IE系列的浏览器中使用 ;=( 因为需要，开发的时候就一直在IE6.0中测试的。已经知道肯定不支持firefox了，很大的遗憾，不过firefox中有firebug，一个很不错的工具 ;=)
		</div>
	</div>
  </div>
 </BODY>
</HTML>
